iT邦幫忙

2025 iThome 鐵人賽

DAY 11
1
Odoo

站在巨人的肩膀上打造企業智慧助手:Make × AI × Odoo 的實踐之路系列 第 11

🚀 Day 11:Make × Google Sheets:判斷新舊客戶,避免重複紀錄

  • 分享至 

  • xImage
  •  

一、前情提要:資料雲端化後的第一個挑戰

昨天我們成功完成了 LINE × Make × Google Sheets 的串接,讓從 LINE 收到的訊息能即時保存到 Google Sheets

聽起來很完美,對吧?但實際跑起來後,馬上出現一個「尷尬現象」—— 同一個人只要傳兩次訊息,Google Sheets 就會多兩筆資料。

雖然不至於真的誤認成不同的人,但清單中重複的資料會讓表格越來越龐大,查找變慢,還可能造成分析報表數據失真、行銷名單重複發送、甚至在與 Odoo 整合時增加額外的處理成本與系統負擔。

所以今天的目標就是:
讀取 Google Sheets 的資料
判斷 LINE User ID 是否已存在
利用篩選器決定是否新增資料


二、使用者情境:客服與行銷的惡夢

讓我們延續昨天的 XXX 公司案例
在昨天的設定下,只要 LINE客戶傳來訊息,Make 就會把它新增到 Google Sheets。

但問題來了:

客戶 A 第一次傳訊息 → ✅ 新增一筆
客戶 A 過 5 分鐘再傳 → ❌ 又新增一筆(重複!)
行銷同事匯出名單 → 發現同一個人有 5 筆記錄…

這會造成什麼問題?

  1. 客服部門:不易判斷這是老客戶還是新客戶
  2. 行銷部門:名單重複,發 EDM 可能會重複寄
  3. Odoo CRM 整合:整合前需額外處理,效率低下

我們今天的目標很簡單:就是讓系統聰明一點,在把資料寫進 Google Sheets 之前,先看看 「欸,這個人是不是已經來過了?」


三、實際操作

https://ithelp.ithome.com.tw/upload/images/20250811/20177665QyKfUdzC3m.png
所以我們要讓 Make 先「看一下」 Google Sheets 裡的資料,如果 LINE User_id 已經存在,就不再新增,直接忽略。

這個流程是接續昨天(Day10)的 Scenario 來做的,如果你還沒設好昨天的流程,建議先回去補一下,今天的操作才會順利接得上喔 🙌


🔧 步驟 1:加入 Search Rows 模組

在原本 LINE 模組的後面,對連接線按右鍵,插入一個 Google Sheets → Search Rows 模組。

這個模組的作用:到你指定的 Google Sheets 和工作表中,查詢是否已經有這個 LINE User_id。
gif1

在設定時,你要:

  • 選擇對應的 Sheets 檔案和對應的工作表。
  • Filter 條件中設定要比對的欄位。
    https://ithelp.ithome.com.tw/upload/images/20250811/20177665vOLr9zbX6o.png

設定好後,建議先執行一次流程測試,觀察回傳的結果:

  • 有查到資料時,Total number of bundles 會大於 0
  • 沒有查到資料時,Total number of bundles 則為 0
    https://ithelp.ithome.com.tw/upload/images/20250811/20177665q2RMGEG3tU.png

查完資料之後,我們要根據查詢結果分流處理,因此接下來進行 Router 的設定。


🔧 步驟 2:加入 Router,設計條件分支

在 Search Rows 模組後面插入一個 Router,這邊會設定兩條路徑:


➤ 路徑一:查到資料 → 不新增資料

點選 Router 第一條連線,加入以下條件 Filter:

  • Total number of bundles >= 1

這代表使用者資料已經存在於 Sheets,不需要再重複寫入。
你可以讓這個路徑什麼事都不做,或之後再延伸其他行為。
https://ithelp.ithome.com.tw/upload/images/20250811/201776655BEtnv74v9.png


➤ 路徑二:查不到資料 → 新增資料

點選 Router 第二條連線,設定條件為:

  • Total number of bundles = 0
    https://ithelp.ithome.com.tw/upload/images/20250811/20177665ckW8uqvpZh.png

接著,在這條路徑下方加入 Google Sheets → Add a Row 模組,將這筆新的 Line User_id 寫入清單中。
https://ithelp.ithome.com.tw/upload/images/20250811/20177665W2q9Vxh8Vg.png


到這裡,整個流程就完成啦 🎉
Make 會根據 Google Sheets 裡的內容,自動判斷 是否為新客戶,再決定要不要寫入資料。

這不只讓資料保持整潔,也大大減少重複紀錄的機率,對後續分析或串接 Odoo 都有很大幫助!
https://ithelp.ithome.com.tw/upload/images/20250811/20177665707rwkvJlc.png


四、驗證成果

完成後,你可以在 LINE 官方帳號 傳一段訊息給自己,Make 會自動判斷Google Sheets 是否有資料,若有則不新增,若沒有則新增資料。
只要看到一列新的資料被新增,就代表成功 🎉
gif2


五、結語

今天,我們讓 Make 不只是寫入 Google Sheets,更學會先判斷「該不該寫」。

雖然今天的操作只是「加一個條件判斷」,看起來好像只是小小一步,
但它讓自動化流程從 「照單全收」轉變為「有條件地處理」,也就是從 「做完事情」邁向「把對的事情做好」

我目前示範的是一個 相對簡易的儲存方式,不需要寫程式、不需要開發 Odoo,只靠 Google Sheets 就能完成初步的聯絡人管理。
這樣的設計對於中小企業、剛起步導入自動化的團隊特別友善,不僅成本低、修改彈性高,也便於跨部門共享資料。

當然,進階一點的做法,我們也可以選擇在 Odoo 中 新增一個欄位 專門儲存對應聯絡人的 Line User_id,這樣未來就可以直接在 Odoo 裡比對、查詢、甚至觸發後續的自動化行為。

💡 預告一下:往後三天的主題會進一步延伸今天的邏輯。
既然我們已經能夠判斷是否為舊客戶,那麼接下來,我們就可以做到:

  • 🧾 舊客戶:自動查詢 Odoo 中的歷史銷售訂單
  • 💬 並透過 Line特殊的呈現方式,將結果即時呈現給對方

這會是從資料儲存,邁向資料「應用」的重要一步。
我們明天見 👋


上一篇
🚀 Day 10:Make × Google Sheets:打造你的雲端資料庫
下一篇
🚀 Day 12: Make × Odoo:建立系統串接的第一步
系列文
站在巨人的肩膀上打造企業智慧助手:Make × AI × Odoo 的實踐之路30
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言